home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Arsenal Files 4
/
The Arsenal Files 4 (Arsenal Computer).ISO
/
casm
/
au116-as.exe
/
UTIL
/
HANDREAD.CPP
< prev
next >
Wrap
C/C++ Source or Header
|
1994-05-31
|
1KB
|
63 lines
#include "..\au.hpp"
/*░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░*/
long HANDLE::read_long()
{
unsigned char c1,c2,c3,c4;
c1 = read_char();
c2 = read_char();
c3 = read_char();
c4 = read_char();
return (unsigned long)c1 |
((unsigned long)c2 << 8) |
((unsigned long)c3 << 16) |
((unsigned long)c4 << 24);
}
/*░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░*/
int HANDLE::read_int()
{
unsigned char c1,c2;
c1 = read_char();
c2 = read_char();
return (unsigned int)c1 |
((unsigned int)c2 << 8);
}
/*░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░*/
int HANDLE::read_string(char *string)
{
int fn_len=0;
int ch;
while ((ch = read_char())>0 && fn_len < 79)
string[fn_len++] = ch;
string[fn_len] = '\0';
return fn_len;
}
/*░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░*/
int HANDLE::read(char *string, int n)
{
int ch;
int bytes_read = 0;
if (n == 0)
return 0;
ch = read_char();
if (ch == EOF)
return EOF;
do
{
if (ch == EOF)
break;
string[bytes_read++] = ch;
if (bytes_read >= n)
break;
} while ((ch = read_char()) >= 0);
return bytes_read;
}